#include <stdint.h>
#include <stdio.h>

#include "sys_api.h"

#include "sys_radar_api.h"



/*UDK 用户不可修改本文件*/



void SAPI_PREPDATA_HANDLE(void){
	SRAPI_PREPDATA_HANDLE();
}

void SAPI_BBE_PREPINIT(PARAM_DATAPREP *sCfg){
	SRAPI_BBE_PREPINIT(sCfg);
}

void SAPI_RF_VENUS_INIT(void){
	SRAPI_RF_VENUS_INIT();
}

void SAPI_ANACFG_SET(ANACFG *sCfg){
	SRAPI_ANACFG_SET(sCfg);
}

void SAPI_P2_FFT_HANDLE(P2_FFT_CONFIG *sCfg){
	SRAPI_P2_FFT_HANDLE(sCfg);
}

void SAPI_P2_FFT_STEPCFG8_HANDLE(P2_FFT_CONFIG *sCfg,uint32_t Step){
	SRAPI_P2_FFT_STEPCFG8_HANDLE(sCfg,Step);
}

void SAPI_RF_VENUS_DEINIT(void){
	SRAPI_RF_VENUS_DEINIT();
}

void SAPI_BBE_WAITISR(uint32_t val){
	SRAPI_BBE_WAITISR(val);
}

uint32_t SAPI_CFAR_HANDLE(CFAR_CONFIG *sCfg){
	return SRAPI_CFAR_HANDLE(sCfg);
}

void SAPI_ANGLE_SEQ_PRE(PARAM_DATAPREP *sCfg){
	SRAPI_ANGLE_SEQ_PRE(sCfg);
}

void SAPI_FFT3D_PRE_HANDLE(FFT3D_PRE *sCfg,struct pc_rst *sRst){
	SRAPI_FFT3D_PRE_HANDLE(sCfg,sRst);
}

void SAPI_WDT_RSTNOW(void){
	SRAPI_WDT_RSTNOW();
}

#if 0
void SAPI_epc_init(struct epc *p_epc,struct epc_target *p_target,uint16_t targetMax,
uint8_t rangeMax,uint8_t chirpMax,uint16_t range_res_mm,uint16_t vel_res_mm_s,uint8_t res_decimals,uint16_t range_offset_mm,uint16_t addon_rsv){
	SRAPI_epc_init(p_epc,p_target,targetMax,rangeMax,chirpMax,range_res_mm,vel_res_mm_s,res_decimals,range_offset_mm,addon_rsv);
}

void SAPI_protov12_add_app_data( uint8_t *buff,int *p_offset,struct app *p_app ){
	SRAPI_protov12_add_app_data(buff,p_offset,p_app );
}
void SAPI_protov12_add_epc_data( uint8_t *buff,int *p_offset,struct epc *p_epc,uint16_t* p_target_cnt){
 SRAPI_protov12_add_epc_data(  buff,p_offset,p_epc,p_target_cnt);
}
void SAPI_protov12_frame_end( uint8_t* buff,int *p_offset,uint16_t target_cnt){
 SRAPI_protov12_frame_end( buff,p_offset, target_cnt);
}

void SAPI_protov12_frame_start( uint8_t* buff,int *p_offset,uint16_t delta,struct epc*p_epc,uint8_t bcd_version,uint8_t RSV){
 SRAPI_protov12_frame_start( buff,p_offset, delta, p_epc, bcd_version,RSV);
}
#endif

void SAPI_DBSCAN_CLUSTER_PROC(struct dbscan_cluster *pDBSCAN,struct pc_rst *frameRst,uint8_t vel_num)
{
	SRAPI_DBSCAN_CLUSTER_PROC(pDBSCAN,frameRst,vel_num);
}
int SAPI_ALPHA_FILTER_PROC(struct alpha_filter_cfg *p_alpha_filter_cfg,struct alpha_filter *p_alpha_filter,struct epc *p_epc,uint32_t sn,uint8_t info1,uint8_t info2){
	return SRAPI_ALPHA_FILTER_PROC(p_alpha_filter_cfg,p_alpha_filter,p_epc, sn, info1, info2);
}

void SAPI_CMPHIT_CFAR_TARGET(uint16_t aLen,BBE_CFARRST_T *aArray,uint16_t bLen,BBE_CFARRST_T *bArray,_Bool *hitAFlag,_Bool *hitBFlag,uint16_t cfar_num_max){
	SRAPI_CMPHIT_CFAR_TARGET(aLen,aArray,bLen,bArray,hitAFlag,hitBFlag,cfar_num_max);
}

void SAPI_COPYWIN_HANDLE(uint16_t *srcAddr,WIN_CFG *sCfg){
	SRAPI_COPYWIN_HANDLE(srcAddr,sCfg);
}

uint32_t SAPI_GET_VERSION(void){
	return SRAPI_GET_VERSION();
}

void SSKEEP_LINK(void){
	extern void sram_irq_handler( int handler_id );
	extern const sUDF_Info_t sram_irq_handler_info;
	extern void user_function(int*);
	
	printf("%d,%d,%d\n",(uint32_t)&sram_irq_handler,(uint32_t)&sram_irq_handler_info,(uint32_t)&user_function);
}
